已经学傻了
环境搭建
安装 sdk
1.下载 sdk-tools
去官网下载最新的 sdk-tools
官网链接:https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip
在 linux 中随便找个文件夹,我这里设置的地址为/root/Environment/android-sdk
把下载的 zip 放到这里面解压,会解压出一个 tools 文件夹,不用改名字
2.下载 platform-tools
去官网下载最新的 platform-tools
官网链接:https://dl.google.com/android/repository/platform-tools-latest-linux.zip
把下载的 zip 放到/root/Environment/android-sdk
里面解压,会解压出一个 platform-tools 文件夹,不用改名字
3.修改环境变量
修改~/.bashrc
文件,其他的我试了没用,在最后一行加上这几句话:
1 | #android-sdk |
安装 ndk
1.下载 ndk
去官网下载一个最新的 ndk
官网链接:https://developer.android.com/ndk/downloads
把下载的 zip 放到/root/Environment
里面解压,会解压出一个 android-ndk-xxx 文件夹,不用改名字
2.修改环境变量
修改~/.bashrc
文件,在最后一行加上这几句话
1 | #android-ndk |
安装工具
1.imgtool
用于从 boot.img 中提取 kernel
要先安装一个库,不然会报错02_decompress.c:22:18: fatal error: lzma.h: 没有那个文件或目录
1 | apt-get install liblzma-dev |
官网链接:http://newandroidbook.com/tools/imgtool.tgz
2.droidimg
先安装 liblz4-tool,要用到 lz4 命令
1 | apt install liblz4-tool |
项目地址:https://github.com/nforest/droidimg
照着安装就完了
编译内核源码
我这里使用的是android-goldfish-4.4-dev
官网链接:https://android.googlesource.com/kernel/goldfish/+archive/refs/heads/android-goldfish-4.4-dev.tar.gz
安装过程和 linux Kernel 差不多,如果报对‘OPENSSL_init_crypto’未定义的引用
的错,就按如下修改:
在 script 文件夹里找到 Makefile 文件,找到如下信息:
1 | HOSTLOADLIBES_sign-file = -lcrypto |
查看如何调用该库,输入命令 pkg-config –libs libcrypto
输出 -L/usr/local/lib -lcrypto
把这句话,复制替换 scripts 目录下的 Makefile:
1 | HOSTLOADLIBES_sign-file = -L/usr/local/lib -lcrypto |